Fes el muntatge
Anem a programar al port on posem el sensor LDR una entrada de dades que varia entre 0 (poca llum) i 1033 (molta llum). També anem a programar una eixida de dades on posem el Led, i que escrivim amb el valor LOW (valor 0) o aturat, i amb el valor HIGH (valor 1) o engegat.
Mira el programa amb les explicacions del que fa cada ratlla.
int Valor_LDR; // Definim la variable on guardar el valor del LDR
int pinLDR = 0; // Definim el port del LDR on llegir les dades
int pinLed = 12; // Definim el port del LED on escriure el valor lògic HIGH "Engegat" o LOW "Aturat"
void setup() { // El setup o part de configuració s'executa 1 vegada solament
pinMode(pinLDR, INPUT);
pinMode(pinLed, OUTPUT);
Serial.begin(9600);
Serial.println("El valor de LDR varia entre 0 i 1023");
Serial.println("Un valor alt equival a molt llum");
Serial.println("Un valor baix equival a poca llum");
} // Final del setup
void loop() { // El loop o bucle del programa principal s'executa una vega darrere altra
Serial.println("Engeguem el LED");
digitalWrite(pinLed, HIGH);
delay(5000); // Esperem 5 s
Valor_LDR = analogRead(pinLDR);
Serial.print("Lectura LDR = ");
Serial.println(Valor_LDR);
delay(1000); // Esperem 1 s
Serial.println("Aturem el LED");
digitalWrite(pinLed, LOW);
delay(1000); // Esperem 1 s
} // Final del loop
|
El programa també es pot fer amb Blockly@rduino:
El resultat si vas a «Eines», «Monitor Sèrie» és aquest. Tapa el sensor amb un tap de bolí i trau-lo al següent cicle loop. Mira les diferències.